package com.he.hsdyc.designmodule.state;

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class FreeState implements State {

    @Override
    public String getStateDescription() {
        return "当前为空闲状态";
    }

    @Override
    public void Book(Room room) {
        //进行预定操作。。。。。。
        //状态便成为已预定状态
        room.setState(new BookState());
    }

    @Override
    public void checkin(Room room) {
        //进行入住操作
        //状态变更为已入住
        room.setState(new CheckinState());
    }

    @Override
    public void unBook(Room room) {
        //空闲状态无法执行--取消预定操作
        log.info("空闲状态无法取消预定");
    }

    @Override
    public void checkout(Room room) {
        //空闲状态无法进行退房操作
        log.info("空闲状态无法退房");
    }
}
